import { mapGetters, mapState } from 'vuex'

var data = {
    imgList: [
        'static/img/light-0@3x.png',
        'static/img/light-1@3x.png',
        'static/img/light-2@3x.png',
        'static/img/light-3@3x.png',
        'static/img/light@3x.png'
    ]
}

var vm = {
    data() {
        return data
    },
    computed: {
        ...mapState(['user']),
        ...mapGetters(['userCreditNums', 'userPersonalStatus', 'userCardIdStatus', 'userBankcardStatus', 'userSesameStatus', 'userOperatorStatus'])
    },
    mounted() {
        $store.dispatch('userInfoAjax')
    },
    methods: {
        // 身份认证
        cardidDo() {
            // 无要求
            $router.push('/loan/cardid')
        },
        // 个人信息认证
        personalDo() {
            // 需要完成身份认证
            if (!this.userCardIdStatus) {
                $toast.show('请先完成身份证信息认证')
            } else {
                $router.push('/loan/personal')
            }
        },
        // 银行卡认证
        bankcardDo() {
            // 不需要验证，因为只在完成订单后才显示
            $router.push('/loan/bankcard')
        },
        // 运营商认证
        operatorDo() {
            if (!this.userCardIdStatus) {
                $toast.show('请先完成身份证信息认证')
            } else if (!this.userPersonalStatus) {
                $toast.show('请先完成个人信息认证')
            } else if (this.userOperatorStatus) {
                // 完成运营商认证后，不做任何操作
            } else {
                $router.push('/loan/operator')
            }
        },
        // 芝麻信息认证
        zhimaAuthDo() {
            if (this.userSesameStatus) {
                // 已完成芝麻信息啥也不做
            } else if (!this.userCardIdStatus) {
                $toast.show('请先完成身份证信息认证')
            } else if (!this.userPersonalStatus) {
                $toast.show('请先完成个人信息认证')
            } else {
                $ajax.bqs.zhimaAuth({
                    userId: $store.state.user.userId,
                    realName: $store.state.user.realName,
                    idCard: $store.state.user.idCard,
                    mobile: $store.state.user.mobile
                }).then(res => {
                    var { code, msg, data } = res.data
                    $toast.show(msg)
                    if (code == 'Z') {
                        // 跳转到芝麻信用认证页面
                        window.location.href = data.authInfoUrl
                    } else if (code == 'S') {
                        // 直接认证成功，更新用户信息即可
                        $store.dispatch('userInfoAjax')
                    }
                }).catch(err => {
                    $toast.show('网络异常，请稍后重试')
                })
            }
        },
        // 提交审核需要完成身份证信息认证和个人信息认证
        submitDo() {
            if (!this.userCardIdStatus) {
                $toast.show('请先完成身份证信息认证')
            } else if (!this.userPersonalStatus) {
                $toast.show('请先完成个人信息认证')
            } else {
                $loading.show()
                $ajax.user.submit({
                    userId: $store.state.user.userId
                }).then(res => {
                    var { code, msg } = res.data
                    $toast.show(msg)
                    if (code == 'S') {
                        $wxsdk.postLbs({
                            scene: 5,
                            mobile: $store.state.user.mobile,
                            userId: $store.state.user.userId
                        })
                        $store.dispatch('userInfoAjax')
                    }
                }).catch(res => {
                    $toast.show('网络异常，请稍后重试')
                })
            }
        }
    },
    mixins: [$mixins.needLogin]
}

export default vm